module(
    name = "rules_proto_grpc_python",
    version = "0.0.0.rpg.version.placeholder",
    compatibility_level = 1,
)

bazel_dep(name = "grpc", version = "1.65.0")
bazel_dep(name = "rules_proto_grpc", version = "0.0.0.rpg.version.placeholder")
bazel_dep(name = "rules_python", version = "0.37.2")

PYTHON_VERSIONS = [
    "3.8",
    "3.9",
    "3.10",
    "3.11",
    "3.12",
]

python = use_extension("@rules_python//python/extensions:python.bzl", "python")

[
    python.toolchain(
        is_default = python_version == PYTHON_VERSIONS[-1],
        python_version = python_version,
    )
    for python_version in PYTHON_VERSIONS
]

pip = use_extension("@rules_python//python/extensions:pip.bzl", "pip")

[
    pip.parse(
        hub_name = "rules_proto_grpc_python_pip_deps",
        python_version = python_version,
        requirements_lock = "//:requirements.txt",
    )
    for python_version in PYTHON_VERSIONS
]

use_repo(pip, "rules_proto_grpc_python_pip_deps")
